1. Field of the Invention
The invention relates to computers and more particularly to scrolling information on computers as a function of how much a hand held device is tilted.
2. Description of Related Art
When more information is to be displayed to a computer user than a display can conveniently hold it is known to scroll the information to position the information of interest at any particular moment within the viewing window of a computer or other similar device. Information, such as text, which is one dimensional, is scrolled typically vertically. Two dimensional information, such as drawings, may require scrolling in both the vertical and horizontal directions in order to position the viewing window over the desired portion of the drawing to be viewed.
There are four traditional ways of scrolling. The first is by direct manipulation of an indicator or xe2x80x9cthumbxe2x80x9d on a scroll bar positioned vertically and/or horizontally on or adjacent to the viewing window. The thumb is manipulated using a mouse or other pointing device.
A second method of scrolling includes clicking on graphical elements in a scroll bar (e.g. clicking at some point within the trough of the scroll bar or clicking on special up/down buttons) to scroll a line or a screenful at a time.
A third method involves pressing physical buttons on the keyboard, such as an up arrow to move up a line and the page up key to move up a screenful.
A fourth way of scrolling involves the use of a flicking gesture with a pen device to scroll an amount indicated by the length of flick.
Each of the traditional ways of scrolling requires the user to interact with specific elements on the screen or connected to the computer and are thus less suited for a portable computing device, such as the Sunpad(trademark), that is typically held by both hands.
The traditional ways of scrolling are notorious for overshooting a desired position. It is difficult for a user to vary the scroll speed using the traditional interaction techniques.
There is thus a need for improving the scrolling mechanisms for information displays particularly for those displays utilizing hand held computing devices.
The present invention provides apparatus, systems, processes and computer program products which overcome the problems described above. Embodiments of the invention control scrolling as a function of the amount of tilt a computer device experiences with respect to a reference orientation. The reference orientation is preferably set by storing a particular orientation of the device with respect to the horizontal at a point in time specified by a user, by, for example, pressing a button. The orientation of the device at sufficient intervals is then compared with the reference orientation to determine the direction and rate of scrolling. The rate of scrolling is controlled as a function of the amount of tilt between the orientation of the device and the reference, i.e. the rate of scrolling is controlled as a function of the angle between the device orientation and the reference, preferably such that the rate is a function of the angular difference squared. Embodiments are disclosed in which tilt in one direction controls a first action and tilt in an orthogonal direction controls a different action.
The invention is directed to a method for displaying information on a display of a computing device by scrolling the information to be displayed as a function of tilt of a control element with respect to a reference. The reference value is preferably set when scrolling is activated such as by the user pushing a button or by squeezing a hand held element. The direction of scrolling is determined by which way the control element is tilted with respect to the reference, e.g. up/down or left/right depending on whether the direction of tilt with respect to the reference is up or down, left or right. Tilt in one direction may control a first action such as scrolling of text and tilt in an orthogonal direction controls a different action such as changing a page of text in a viewing window.
The control element can be either built into the computing device itself or be separate from it. If separate, it can be either connected to the computing device or linked to the computing device by electromagnetic radiation. In one preferred form of the invention, the computing device is hand held.
Scrolling preferably includes scrolling at a rate which is a function of the angle of tilt squared. For some applications it is advantageous to set the rate of scrolling in points per second to render the scrolling independent of font size and/or resolution.
The invention is also directed to apparatus for displaying information on a display, including a tilt detector, a scroll mode selector, a reference store configured to save a value of tilt detected by the tilt detector when the scroll mode selector is activated and a control device connected to the tilt detector and said display at a rate which is a function of the difference between the output of the tilt detector and the value of tilt stored in said reference store. Information to be displayed can be received in a number of ways such as from a disk controller over a bus or from a communications controller over a communications link.
The invention can be incorporated into a timepiece and used to scroll menu options and to select and activate time piece functions. Alternatively, the invention can be incorporated into an item of user wearable apparel and linked to said display over a electromagnetic or infra-red communications link.
The invention is also directed to a computer system in which a plurality of computers are linked together, such as over a network in which at least one of the computers is configured to scroll information at a rate which is a function of tilt of a control element with respect to a reference.
The invention is also directed to a computer program product for displaying information on a display of a computing device having a tilt sensor, including a computer readable memory medium and a computer program, stored on the medium, including program steps for storing at least one initial output of said tilt sensor when a scroll function is activated, program steps for calculating a difference between at least one output of said tilt sensor and a scrolling of information on said display at a rate which is a function of said difference.